Rapid Prototyping

Das Hilfethema Modularisierung zeigt an einer Bibliotheksanwendung, welche Rolle die schrittweise Verfeinerung und die Modularisierung in der Anwendungsentwicklung spielen. Ein weiteres Kennzeichen der modernen Softwareentwicklung ist das Rapid Prototyping.

Mit der zunehmenden Bedeutung von Benutzerschnittstellen hat sich gezeigt, dass ein blosser Schreibtischentwurf die Bedürfnisse der Anwender nicht genügend berücksichtigt. Zum einen ist es für Anwender und Entwickler meist schwierig, eine Feinspezifikation und einen Feinentwurf ohne Demonstration seiner wichtigsten Eigenschaften in Aktion zu sehen. Zum anderen endet der Entwicklungsprozess nie, weil stets Raum für Verbesserungen und Fehlerbehebungen bleibt. Oft setzt man deshalb eine erste Annäherung an die Detailspezifikation schon bald in einen Prototyp um. Dieser erste Demonstrationsprototyp ist Anlass für Diskussionen unter Entwicklern und Anwendern. Nach einer Verfeinerung der Spezifikation entsteht ein zweiter Prototyp, der den Vorstellungen der Auftraggeber und Anwender besser entspricht. Dieses explorative Vorgehen wird solange wiederholt, bis die Anwenderbedürfnisse befriedigt oder die gesetzte Entwicklungsdauer erreicht ist. Man nennt diese Art der explorativen Softwareentwicklung auch explorativ oder zyklisch.

Explorative oder zyklische Anwendungsentwicklung darf allerdings nicht dazu führen, dass 'Versuch und Irrtum' den überlegten Top Down-Entwurf verdrängt. Sorgfältige Überlegungen zur Spezfikation, zur Modularisierung und zur Algorithmisierung verhindern Fehler während der Implementation. Vorschnelle Implementationsentscheidungen lassen sich meist nur mit grossem Zeitaufwand korrigieren. Fehler in der 'Paper and Pencil'-Phase lassen sich hingegen schneller verbessern.